﻿<?xml version="1.0" encoding="utf-8"?>
<!--This file was saved with a tool from Vector Informatik GmbH-->
<AUTOSAR xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-3-0.xsd" xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <AR-PACKAGES>
    <AR-PACKAGE>
      <SHORT-NAME>ComponentTypes</SHORT-NAME>
      <ELEMENTS>
        <COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE UUID="BB0B406E-3152-4AA4-BF1A-1A4DAAEA2929">
          <SHORT-NAME>BMW_Application_ModeRequestor</SHORT-NAME>
          <PORTS>
            <P-PORT-PROTOTYPE UUID="CD6832A6-178D-40CC-A500-BFC659EE23CF">
              <SHORT-NAME>PP_BAC4_ApplicationModeState_Switch</SHORT-NAME>
              <PROVIDED-COM-SPECS>
                <MODE-SWITCH-SENDER-COM-SPEC>
                  <ENHANCED-MODE-API>false</ENHANCED-MODE-API>
                  <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</MODE-GROUP-REF>
                  <QUEUE-LENGTH>3</QUEUE-LENGTH>
                </MODE-SWITCH-SENDER-COM-SPEC>
              </PROVIDED-COM-SPECS>
              <PROVIDED-INTERFACE-TREF DEST="MODE-SWITCH-INTERFACE">/PortInterfaces/PI_BAC4_ApplicationModeState</PROVIDED-INTERFACE-TREF>
            </P-PORT-PROTOTYPE>
            <R-PORT-PROTOTYPE UUID="4C2793AB-D27D-4A10-8840-6A0E8B29B030">
              <SHORT-NAME>PP_BAC4_ApplicationModeState_Notification</SHORT-NAME>
              <REQUIRED-COM-SPECS>
                <MODE-SWITCH-RECEIVER-COM-SPEC>
                  <ENHANCED-MODE-API>true</ENHANCED-MODE-API>
                  <SUPPORTS-ASYNCHRONOUS-MODE-SWITCH>false</SUPPORTS-ASYNCHRONOUS-MODE-SWITCH>
                </MODE-SWITCH-RECEIVER-COM-SPEC>
              </REQUIRED-COM-SPECS>
              <REQUIRED-INTERFACE-TREF DEST="MODE-SWITCH-INTERFACE">/PortInterfaces/PI_BAC4_ApplicationModeState</REQUIRED-INTERFACE-TREF>
            </R-PORT-PROTOTYPE>
            <R-PORT-PROTOTYPE UUID="63D6BCDA-CB68-441F-B25B-CA72494E39CD">
              <SHORT-NAME>PP_Bac4_ApplicationState_Request</SHORT-NAME>
              <REQUIRED-COM-SPECS>
                <NONQUEUED-RECEIVER-COM-SPEC>
                  <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/PortInterfaces/PI_Bac4_ApplicationState_Request/Bac4_ApplicationState</DATA-ELEMENT-REF>
                  <USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
                  <ALIVE-TIMEOUT>0</ALIVE-TIMEOUT>
                  <ENABLE-UPDATE>false</ENABLE-UPDATE>
                  <FILTER>
                    <DATA-FILTER-TYPE>ALWAYS</DATA-FILTER-TYPE>
                  </FILTER>
                  <HANDLE-NEVER-RECEIVED>false</HANDLE-NEVER-RECEIVED>
                  <INIT-VALUE>
                    <CONSTANT-REFERENCE>
                      <CONSTANT-REF DEST="CONSTANT-SPECIFICATION">/Constants/C_Bac4_ApplicationState_INIT</CONSTANT-REF>
                    </CONSTANT-REFERENCE>
                  </INIT-VALUE>
                </NONQUEUED-RECEIVER-COM-SPEC>
              </REQUIRED-COM-SPECS>
              <REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/PortInterfaces/PI_Bac4_ApplicationState_Request</REQUIRED-INTERFACE-TREF>
            </R-PORT-PROTOTYPE>
          </PORTS>
          <INTERNAL-BEHAVIORS>
            <SWC-INTERNAL-BEHAVIOR UUID="12B61305-40FB-4748-8B5C-5FF61CAF88C5">
              <SHORT-NAME>BMW_Application_ModeRequestor_InternalBehavior</SHORT-NAME>
              <DATA-TYPE-MAPPING-REFS>
                <DATA-TYPE-MAPPING-REF DEST="DATA-TYPE-MAPPING-SET">/ComponentTypes/DataTypeMappingSets/TMS_Bac4_ApplicationState</DATA-TYPE-MAPPING-REF>
              </DATA-TYPE-MAPPING-REFS>
              <EVENTS>
                <INIT-EVENT UUID="B125C9E3-BAF5-4CC1-8705-369369B71A98">
                  <SHORT-NAME>Bac4_ModeRequestor_InitEvent</SHORT-NAME>
                  <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/ComponentTypes/BMW_Application_ModeRequestor/BMW_Application_ModeRequestor_InternalBehavior/Bac4_ModeRequestor_Init</START-ON-EVENT-REF>
                </INIT-EVENT>
                <SWC-MODE-SWITCH-EVENT UUID="0B9DC99C-642F-4512-9FAF-542A1B156400">
                  <SHORT-NAME>MST_PerformShutdown_0</SHORT-NAME>
                  <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/ComponentTypes/BMW_Application_ModeRequestor/BMW_Application_ModeRequestor_InternalBehavior/PerformShutdown</START-ON-EVENT-REF>
                  <ACTIVATION>ON-ENTRY</ACTIVATION>
                  <MODE-IREFS>
                    <MODE-IREF>
                      <CONTEXT-PORT-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Notification</CONTEXT-PORT-REF>
                      <CONTEXT-MODE-DECLARATION-GROUP-PROTOTYPE-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</CONTEXT-MODE-DECLARATION-GROUP-PROTOTYPE-REF>
                      <TARGET-MODE-DECLARATION-REF DEST="MODE-DECLARATION">/ModeDclrGroups/Bac4_ApplicationState/SHUTDOWN</TARGET-MODE-DECLARATION-REF>
                    </MODE-IREF>
                  </MODE-IREFS>
                </SWC-MODE-SWITCH-EVENT>
                <SWC-MODE-SWITCH-EVENT UUID="0C57893D-31B9-48D9-801B-C465C4BBF6F9">
                  <SHORT-NAME>MST_Process_Requests_BAC4_ApplicationState_1</SHORT-NAME>
                  <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/ComponentTypes/BMW_Application_ModeRequestor/BMW_Application_ModeRequestor_InternalBehavior/Process_Requests_BAC4_ApplicationState</START-ON-EVENT-REF>
                  <ACTIVATION>ON-ENTRY</ACTIVATION>
                  <MODE-IREFS>
                    <MODE-IREF>
                      <CONTEXT-PORT-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Notification</CONTEXT-PORT-REF>
                      <CONTEXT-MODE-DECLARATION-GROUP-PROTOTYPE-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</CONTEXT-MODE-DECLARATION-GROUP-PROTOTYPE-REF>
                      <TARGET-MODE-DECLARATION-REF DEST="MODE-DECLARATION">/ModeDclrGroups/Bac4_ApplicationState/POST_RUN</TARGET-MODE-DECLARATION-REF>
                    </MODE-IREF>
                  </MODE-IREFS>
                </SWC-MODE-SWITCH-EVENT>
                <DATA-RECEIVED-EVENT UUID="7111FB96-DADB-4BD8-85CE-3CE1334D3A92">
                  <SHORT-NAME>DRT_Process_Requests_BAC4_ApplicationState_PP_Bac4_ApplicationState_Request_Bac4_ApplicationState</SHORT-NAME>
                  <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/ComponentTypes/BMW_Application_ModeRequestor/BMW_Application_ModeRequestor_InternalBehavior/Process_Requests_BAC4_ApplicationState</START-ON-EVENT-REF>
                  <DATA-IREF>
                    <CONTEXT-R-PORT-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_Bac4_ApplicationState_Request</CONTEXT-R-PORT-REF>
                    <TARGET-DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/PortInterfaces/PI_Bac4_ApplicationState_Request/Bac4_ApplicationState</TARGET-DATA-ELEMENT-REF>
                  </DATA-IREF>
                </DATA-RECEIVED-EVENT>
              </EVENTS>
              <INCLUDED-DATA-TYPE-SETS>
                <INCLUDED-DATA-TYPE-SET>
                  <DATA-TYPE-REFS>
                    <DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/DataTypes/Bac4_ApplicationStateType</DATA-TYPE-REF>
                  </DATA-TYPE-REFS>
                  <LITERAL-PREFIX>BAC4_ApplicationStateSet</LITERAL-PREFIX>
                </INCLUDED-DATA-TYPE-SET>
              </INCLUDED-DATA-TYPE-SETS>
              <RUNNABLES>
                <RUNNABLE-ENTITY UUID="0D58F86D-1973-418E-9F4B-CCD345AB39B8">
                  <SHORT-NAME>Bac4_ModeRequestor_Init</SHORT-NAME>
                  <ADMIN-DATA>
                    <SDGS>
                      <SDG GID="edve:RunnableKind">
                        <SD>InitRunnable</SD>
                      </SDG>
                    </SDGS>
                  </ADMIN-DATA>
                  <MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
                  <CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
                  <MODE-SWITCH-POINTS>
                    <MODE-SWITCH-POINT>
                      <SHORT-NAME>SWITCH_PP_BAC4_ApplicationModeState_Switch_Bac4_ApplicationMode</SHORT-NAME>
                      <MODE-GROUP-IREF>
                        <CONTEXT-P-PORT-REF DEST="P-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Switch</CONTEXT-P-PORT-REF>
                        <TARGET-MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</TARGET-MODE-GROUP-REF>
                      </MODE-GROUP-IREF>
                    </MODE-SWITCH-POINT>
                  </MODE-SWITCH-POINTS>
                  <SYMBOL>Bac4_ModeRequestor_Init</SYMBOL>
                </RUNNABLE-ENTITY>
                <RUNNABLE-ENTITY UUID="646F0BA9-55B6-42B2-AB6F-0BEFEC2443AB">
                  <SHORT-NAME>PerformShutdown</SHORT-NAME>
                  <MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
                  <CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
                  <MODE-ACCESS-POINTS>
                    <MODE-ACCESS-POINT>
                      <MODE-GROUP-IREF>
                        <R-MODE-GROUP-IN-ATOMIC-SWC-INSTANCE-REF>
                          <CONTEXT-R-PORT-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Notification</CONTEXT-R-PORT-REF>
                          <TARGET-MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</TARGET-MODE-GROUP-REF>
                        </R-MODE-GROUP-IN-ATOMIC-SWC-INSTANCE-REF>
                      </MODE-GROUP-IREF>
                    </MODE-ACCESS-POINT>
                  </MODE-ACCESS-POINTS>
                  <MODE-SWITCH-POINTS>
                    <MODE-SWITCH-POINT>
                      <SHORT-NAME>SWITCH_PP_BAC4_ApplicationModeState_Switch_Bac4_ApplicationMode</SHORT-NAME>
                      <MODE-GROUP-IREF>
                        <CONTEXT-P-PORT-REF DEST="P-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Switch</CONTEXT-P-PORT-REF>
                        <TARGET-MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</TARGET-MODE-GROUP-REF>
                      </MODE-GROUP-IREF>
                    </MODE-SWITCH-POINT>
                  </MODE-SWITCH-POINTS>
                  <SYMBOL>PerformShutdown</SYMBOL>
                </RUNNABLE-ENTITY>
                <RUNNABLE-ENTITY UUID="B77B056A-405D-4A85-BF1A-D82B36768188">
                  <SHORT-NAME>Process_Requests_BAC4_ApplicationState</SHORT-NAME>
                  <MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
                  <CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
                  <DATA-RECEIVE-POINT-BY-ARGUMENTS>
                    <VARIABLE-ACCESS>
                      <SHORT-NAME>REC_PP_Bac4_ApplicationState_Request_Bac4_ApplicationState</SHORT-NAME>
                      <ACCESSED-VARIABLE>
                        <AUTOSAR-VARIABLE-IREF>
                          <PORT-PROTOTYPE-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_Bac4_ApplicationState_Request</PORT-PROTOTYPE-REF>
                          <TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/PortInterfaces/PI_Bac4_ApplicationState_Request/Bac4_ApplicationState</TARGET-DATA-PROTOTYPE-REF>
                        </AUTOSAR-VARIABLE-IREF>
                      </ACCESSED-VARIABLE>
                    </VARIABLE-ACCESS>
                  </DATA-RECEIVE-POINT-BY-ARGUMENTS>
                  <MODE-ACCESS-POINTS>
                    <MODE-ACCESS-POINT>
                      <MODE-GROUP-IREF>
                        <R-MODE-GROUP-IN-ATOMIC-SWC-INSTANCE-REF>
                          <CONTEXT-R-PORT-REF DEST="R-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Notification</CONTEXT-R-PORT-REF>
                          <TARGET-MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</TARGET-MODE-GROUP-REF>
                        </R-MODE-GROUP-IN-ATOMIC-SWC-INSTANCE-REF>
                      </MODE-GROUP-IREF>
                    </MODE-ACCESS-POINT>
                  </MODE-ACCESS-POINTS>
                  <MODE-SWITCH-POINTS>
                    <MODE-SWITCH-POINT>
                      <SHORT-NAME>SWITCH_PP_BAC4_ApplicationModeState_Switch_Bac4_ApplicationMode</SHORT-NAME>
                      <MODE-GROUP-IREF>
                        <CONTEXT-P-PORT-REF DEST="P-PORT-PROTOTYPE">/ComponentTypes/BMW_Application_ModeRequestor/PP_BAC4_ApplicationModeState_Switch</CONTEXT-P-PORT-REF>
                        <TARGET-MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP-PROTOTYPE">/PortInterfaces/PI_BAC4_ApplicationModeState/Bac4_ApplicationMode</TARGET-MODE-GROUP-REF>
                      </MODE-GROUP-IREF>
                    </MODE-SWITCH-POINT>
                  </MODE-SWITCH-POINTS>
                  <SYMBOL>Process_Requests_BAC4_ApplicationState</SYMBOL>
                </RUNNABLE-ENTITY>
              </RUNNABLES>
              <SUPPORTS-MULTIPLE-INSTANTIATION>false</SUPPORTS-MULTIPLE-INSTANTIATION>
            </SWC-INTERNAL-BEHAVIOR>
          </INTERNAL-BEHAVIORS>
        </COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE>
        <SWC-IMPLEMENTATION UUID="3DFFF66F-E9F7-42CC-931C-688A6A3EE7CB">
          <SHORT-NAME>BMW_Application_ModeRequestor_Implementation</SHORT-NAME>
          <CODE-DESCRIPTORS>
            <CODE>
              <SHORT-NAME>Default</SHORT-NAME>
              <ARTIFACT-DESCRIPTORS>
                <AUTOSAR-ENGINEERING-OBJECT>
                  <SHORT-LABEL>Default</SHORT-LABEL>
                  <CATEGORY>SWSRC</CATEGORY>
                </AUTOSAR-ENGINEERING-OBJECT>
              </ARTIFACT-DESCRIPTORS>
            </CODE>
          </CODE-DESCRIPTORS>
          <BEHAVIOR-REF DEST="SWC-INTERNAL-BEHAVIOR">/ComponentTypes/BMW_Application_ModeRequestor/BMW_Application_ModeRequestor_InternalBehavior</BEHAVIOR-REF>
        </SWC-IMPLEMENTATION>
      </ELEMENTS>
    </AR-PACKAGE>
  </AR-PACKAGES>
</AUTOSAR>